
const path = require('path');

function resolve(dir) {
    return path.join(__dirname, dir)
}


module.exports = {

    chainWebpack: config => {
        config.module
            .rule('svg')
            .exclude.add(resolve('src/assets/icons'))
            .end()
        config.module
            .rule('icons')
            .test(/\.svg$/)
            .include.add(resolve('src/assets/icons'))
            .end()
            .use('svg-sprite-loader')
            .loader('svg-sprite-loader')
            .options({
                symbolId: 'icon-[name]'
            })
            .end()
    },

}

module.exports={
    //开启代理服务器,代理服务器(端口号和主机端口号相同),4000是提供data的服务器的端口号
    //可用来解决get()等方法跨域的问题(其他方法:JSONP)
    //方式一
    /*devServer:{
        proxy:'http://localhost:4000'
    }*/
    //方式二,优点:能配置多个proxy
    devServer:{
        proxy: {
            '/proxy_1':{
                //前端get的地址:'http://localhost:8080/try/runOne'
                target:'http://localhost:4000',
                pathRewrite:{'^/proxy_1':''},//一定要有,用来将标识符/try过滤掉
                ws:true,//默认true,用于支持webSocket,
                changeOrigin:true//最好车职位true,用于说谎
            }
        }

    },
    chainWebpack: config => {
        const svgRule = config.module.rule('svg');
        // 清空默认svg规则
        svgRule.uses.clear();
        //针对svg文件添加svg-sprite-loader规则
        svgRule
            .test( /\.svg$/)
            .use('svg-sprite-loader')
            .loader('svg-sprite-loader')
            .options({
                symbolId: 'icon-[name]'
            });
    }
}
